# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
#	           ChangeSet	1.1079+1.1069.1.25 -> 1.1080 
#	include/asm-i386/mpspec.h	1.9.1.1 -> 1.10.1.1
#	include/linux/acpi.h	1.17.1.2 -> 1.18.1.1
#	  drivers/acpi/osl.c	1.26.1.1 -> 1.28.1.1
#	            Makefile	1.190.1.47 -> 1.227  
#	drivers/acpi/utilities/utglobal.c	1.20.1.1 -> 1.21.1.1
#	arch/ia64/kernel/setup.c	1.11.3.5 -> 1.19   
#	include/acpi/acpi_drivers.h	1.5.1.1 -> 1.6.1.1
#	drivers/acpi/tables.c	1.9.1.1 -> 1.10.1.1
#	drivers/acpi/executer/exutils.c	1.17.1.1 -> 1.18.1.1
#	include/acpi/acconfig.h	1.35.1.1 -> 1.36.1.1
#	include/acpi/platform/acenv.h	1.12.1.1 -> 1.13.1.1
#	drivers/acpi/tables/tbinstal.c	1.16.1.1 -> 1.17.1.1
#	arch/i386/kernel/mpparse.c	1.27.1.4 -> 1.32   
#	arch/i386/kernel/io_apic.c	1.27.1.3 -> 1.33   
#	drivers/acpi/tables/tbconvrt.c	1.21.1.1 -> 1.22.1.1
#	include/linux/pci_ids.h	1.44.5.3 -> 1.68   
#	drivers/scsi/Config.in	1.15.1.5 -> 1.21   
#	arch/i386/kernel/setup.c	1.68.2.1 -> 1.74   
#	 drivers/pci/pci.ids	1.37.3.2 -> 1.37.2.4
#	arch/ia64/ia32/sys_ia32.c	1.9.1.28 -> 1.25   
#	drivers/acpi/tables/tbget.c	1.16.1.1 -> 1.17.1.1
#	include/asm-i386/io_apic.h	1.10.1.2 -> 1.14   
#	drivers/acpi/tables/tbxfroot.c	1.14.1.1 -> 1.15.1.1
#	drivers/acpi/hardware/hwregs.c	1.20.1.1 -> 1.21.1.1
#	drivers/acpi/Config.in	1.9.1.3 -> 1.14   
#	Documentation/Configure.help	1.162.6.2 -> 1.172  
#	drivers/acpi/Makefile	1.16.1.1 -> 1.17.1.1
#
diff -Nru a/Documentation/Configure.help b/Documentation/Configure.help
--- a/Documentation/Configure.help	Wed Oct  8 09:06:16 2003
+++ b/Documentation/Configure.help	Wed Oct  8 09:06:16 2003
@@ -17645,6 +17645,11 @@
   purpose port, say Y here. See
   <http://www.dig64.org/specifications/DIG64_HCDPv10a_01.pdf>.
 
+Support for serial ports defined in ACPI namespace
+CONFIG_SERIAL_ACPI
+  If you wish to enable serial port discovery via the ACPI
+  namespace, say Y here.  If unsure, say N.
+
 Support for PowerMac serial ports
 CONFIG_MAC_SERIAL
   If you have Macintosh style serial ports (8 pin mini-DIN), say Y
@@ -19038,20 +19043,6 @@
   down the system.  Until then, you can cat it, and see output when
   a button is pressed.
 
-CONFIG_ACPI_BATTERY
-  This driver adds support for battery information through
-  /proc/acpi/battery. If you have a mobile system with a battery, 
-  say Y.
-
-CONFIG_ACPI_FAN
-  This driver adds support for ACPI fan devices, allowing user-mode 
-  applications to perform basic fan control (on, off, status).
-
-CONFIG_ACPI_PROCESSOR
-  This driver installs ACPI as the idle handler for Linux, and uses
-  ACPI C2 and C3 processor states to save power, on systems that
-  support it.
-
 ACPI AC Adapter
 CONFIG_ACPI_AC
   This driver adds support for the AC Adapter object, which indicates
@@ -19061,65 +19052,18 @@
 ACPI Embedded Controller
 CONFIG_ACPI_EC
   This driver is required on some systems for the proper operation of
-  the battery and thermal drivers.  If you are compiling for a laptop,
-  say Y.
+  the battery and thermal drivers.  If you are compiling for a 
+  mobile system, say Y.
 
-ACPI Control Method Battery
-CONFIG_ACPI_CMBATT
-  This driver adds support for battery information through
-  /proc/acpi/battery. If you have a laptop with a battery, say Y.
+CONFIG_ACPI_PROCESSOR
+  This driver installs ACPI as the idle handler for Linux, and uses
+  ACPI C2 and C3 processor states to save power, on systems that
+  support it.
 
-ACPI Thermal
 CONFIG_ACPI_THERMAL
   This driver handles overheating conditions on laptops. It is HIGHLY
   recommended, as your laptop CPU may be damaged without it.
 
-ACPI ASUS/Medion Laptop Extras
-CONFIG_ACPI_ASUS
-  This driver provides support for extra features of ACPI-compatible
-  ASUS laptops. As some of Medion laptops are made by ASUS, it may also
-  support some Medion laptops (such as 9675 for example).  It makes all
-  the extra buttons generate standard ACPI events that go through
-  /proc/acpi/events, and (on some models) adds support for changing the
-  display brightness and output, switching the LCD backlight on and off,
-  and most importantly, allows you to blink those fancy LEDs intended
-  for reporting mail and wireless status.
-  
-  All settings are changed via /proc/acpi/asus directory entries. Owner
-  and group for these entries can be set with asus_uid and asus_gid
-  parameters.
-  
-  More information and a userspace daemon for handling the extra buttons
-  at <http://sourceforge.net/projects/acpi4asus/>.
-  
-  If you have an ACPI-compatible ASUS laptop, say Y or M here. This
-  driver is still under development, so if your laptop is unsupported or
-  something works not quite as expected, please use the mailing list
-  available on the above page (acpi4asus-user@lists.sourceforge.net)
-  
-ACPI Toshiba Laptop Extras
-CONFIG_ACPI_TOSHIBA
-  This driver adds support for access to certain system settings
-  on "legacy free" Toshiba laptops.  These laptops can be recognized by
-  their lack of a BIOS setup menu and APM support.
-
-  On these machines, all system configuration is handled through the
-  ACPI.  This driver is required for access to controls not covered
-  by the general ACPI drivers, such as LCD brightness, video output,
-  etc.
-
-  This driver differs from the non-ACPI Toshiba laptop driver (located
-  under "Processor type and features") in several aspects.
-  Configuration is accessed by reading and writing text files in the
-  /proc tree instead of by program interface to /dev.  Furthermore, no
-  power management functions are exposed, as those are handled by the
-  general ACPI drivers.
-
-  More information about this driver is available at
-  <http://memebeam.org/toys/ToshibaAcpiDriver>.
-
-  If you have a legacy free Toshiba laptop (such as the Libretto L1
-  series), say Y.
 
 Advanced Power Management BIOS support
 CONFIG_APM
@@ -26294,11 +26238,13 @@
 # Choice: ia64type
 Itanium
 CONFIG_ITANIUM
-  Select your IA64 processor type.  The default is Intel Itanium.
+  Select your IA-64 processor type.  The default is Intel Itanium.
+  This choice is safe for all IA-64 systems, but may not perform
+  optimally on systems with, say, Itanium 2 or newer processors.
 
-McKinley
+Itanium 2
 CONFIG_MCKINLEY
-  Select this to configure for a McKinley processor.
+  Select this to configure for an Itanium 2 (McKinley) processor.
 
 # Choice: ia64system
 IA-64 system type
@@ -26355,6 +26301,14 @@
   Say Y here to enable machine check support for IA-64.  If you're
   unsure, answer Y.
 
+Use PAL_HALT_LIGHT in idle loop
+CONFIG_IA64_PAL_IDLE
+  Say Y here to enable use of PAL_HALT_LIGHT in the cpu_idle loop.
+  This allows the CPU to enter a low power state when idle.  You
+  can enable CONFIG_IA64_PALINFO and check /proc/pal/cpu0/power_info
+  to see the power consumption and latency for this state.  If you're
+  unsure your firmware supports it, answer N.
+
 Disable IA-64 Virtual Hash Page Table
 CONFIG_DISABLE_VHPT
   The Virtual Hash Page Table (VHPT) enhances virtual address
@@ -26375,12 +26329,31 @@
   and restore instructions.  It's useful for tracking down spinlock
   problems, but slow!  If you're unsure, select N.
 
-Early printk support (requires VGA!)
+Early printk support
 CONFIG_IA64_EARLY_PRINTK
-  Selecting this option uses the VGA screen for printk() output before
-  the consoles are initialised.  It is useful for debugging problems
-  early in the boot process, but only if you have a VGA screen
-  attached.  If you're unsure, select N.
+  Selecting this option uses a UART or VGA screen (or both) for
+  printk() output before the consoles are initialised.  It is useful
+  for debugging problems early in the boot process, but only if you
+  have a serial terminal or a VGA screen attached.  If you're unsure,
+  select N.
+
+Early printk on serial port
+CONFIG_IA64_EARLY_PRINTK_UART
+  Select this option to use a serial port for early printk() output.
+  You must also select either CONFIG_IA64_EARLY_PRINTK_UART_BASE or
+  CONFIG_SERIAL_HCDP.  If you select CONFIG_SERIAL_HCDP, early
+  printk() output will appear on the first console device described by
+  the HCDP.  If you set CONFIG_IA64_EARLY_PRINTK_UART_BASE, the HCDP
+  will be ignored.
+
+UART base address
+CONFIG_IA64_EARLY_PRINTK_UART_BASE
+  The physical MMIO address of the UART to use for early printk().
+  This overrides any UART located using the EFI HCDP table.
+
+Early printk on VGA
+CONFIG_IA64_EARLY_PRINTK_VGA
+  Select this option to use VGA for early printk() output.
 
 Print possible IA64 hazards to console
 CONFIG_IA64_PRINT_HAZARDS
diff -Nru a/Makefile b/Makefile
--- a/Makefile	Wed Oct  8 09:06:16 2003
+++ b/Makefile	Wed Oct  8 09:06:16 2003
@@ -93,6 +93,7 @@
 
 CFLAGS := $(CPPFLAGS) -Wall -Wstrict-prototypes -Wno-trigraphs -O2 \
 	  -fno-strict-aliasing -fno-common
+CFLAGS += -g
 ifndef CONFIG_FRAME_POINTER
 CFLAGS += -fomit-frame-pointer
 endif
@@ -305,8 +306,7 @@
 	$(CONFIG_SHELL) scripts/Configure -d arch/$(ARCH)/config.in
 
 xconfig: symlinks
-	$(MAKE) -C scripts kconfig.tk
-	wish -f scripts/kconfig.tk
+	@echo -e "***\n* Sorry, xconfig is broken; use \"make menuconfig\" instead.\n***"
 
 menuconfig: include/linux/version.h symlinks
 	$(MAKE) -C scripts/lxdialog all
diff -Nru a/arch/ia64/kernel/setup.c b/arch/ia64/kernel/setup.c
--- a/arch/ia64/kernel/setup.c	Wed Oct  8 09:06:16 2003
+++ b/arch/ia64/kernel/setup.c	Wed Oct  8 09:06:16 2003
@@ -46,6 +46,7 @@
 #include <asm/pgtable.h>
 #include <asm/pgalloc.h>
 #include <asm/smp.h>
+#include <asm/tlb.h>
 
 #ifdef CONFIG_BLK_DEV_RAM
 # include <linux/blk.h>
@@ -64,6 +65,7 @@
  struct cpuinfo_ia64 *_cpu_data[NR_CPUS];
 #else
  struct cpuinfo_ia64 _cpu_data[NR_CPUS] __attribute__ ((section ("__special_page_section")));
+ mmu_gather_t mmu_gathers[NR_CPUS];
 #endif
 
 unsigned long ia64_cycles_per_usec;
@@ -659,6 +661,7 @@
 		_cpu_data[cpu]->cpu_data[smp_processor_id()] = my_cpu_data;
 #else
 	my_cpu_data = cpu_data(smp_processor_id());
+	my_cpu_data->mmu_gathers = &mmu_gathers[smp_processor_id()];
 #endif
 
 	/*
diff -Nru a/drivers/acpi/tables.c b/drivers/acpi/tables.c
--- a/drivers/acpi/tables.c	Wed Oct  8 09:06:16 2003
+++ b/drivers/acpi/tables.c	Wed Oct  8 09:06:16 2003
@@ -261,10 +261,17 @@
 
 	/* Map the DSDT header via the pointer in the FADT */
 	if (id == ACPI_DSDT) {
-		struct acpi_table_fadt *fadt = (struct acpi_table_fadt *) *header;
+		struct fadt_descriptor_rev2 *fadt = (struct fadt_descriptor_rev2 *) *header;
+
+		if (fadt->header.revision == 3 && fadt->Xdsdt) {
+			*header = (void *) __acpi_map_table(fadt->Xdsdt,
+					sizeof(struct acpi_table_header));
+		} else if (fadt->V1_dsdt) {
+			*header = (void *) __acpi_map_table(fadt->V1_dsdt,
+					sizeof(struct acpi_table_header));
+		} else
+			*header = 0;
 
-		*header = (void *) __acpi_map_table(fadt->dsdt_addr,
-				sizeof(struct acpi_table_header));
 		if (!*header) {
 			printk(KERN_WARNING PREFIX "Unable to map DSDT\n");
 			return -ENODEV;
diff -Nru a/drivers/scsi/Config.in b/drivers/scsi/Config.in
--- a/drivers/scsi/Config.in	Wed Oct  8 09:06:16 2003
+++ b/drivers/scsi/Config.in	Wed Oct  8 09:06:16 2003
@@ -185,6 +185,7 @@
       bool '   Include loadable firmware in driver' CONFIG_SCSI_QLOGIC_FC_FIRMWARE
    fi
    dep_tristate 'Qlogic QLA 1280 SCSI support' CONFIG_SCSI_QLOGIC_1280 $CONFIG_SCSI
+   dep_tristate 'Qlogic QLA 2100 driver support' CONFIG_SCSI_QLOGIC_QLA2100 $CONFIG_SCSI
 fi
 if [ "$CONFIG_X86" = "y" ]; then
    dep_tristate 'Seagate ST-02 and Future Domain TMC-8xx SCSI support' CONFIG_SCSI_SEAGATE $CONFIG_SCSI
diff -Nru a/include/acpi/acpi_drivers.h b/include/acpi/acpi_drivers.h
--- a/include/acpi/acpi_drivers.h	Wed Oct  8 09:06:16 2003
+++ b/include/acpi/acpi_drivers.h	Wed Oct  8 09:06:16 2003
@@ -162,7 +162,6 @@
 
 int acpi_pci_root_init (void);
 void acpi_pci_root_exit (void);
-void acpi_pci_get_translations (struct acpi_pci_id* id, u64* mem_tra, u64* io_tra);
 
 /* ACPI PCI Interrupt Link (pci_link.c) */